home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 January: Mac OS SDK / Dev.CD Jan 99 SDK1.toast / Development Kits / Interfaces&Libraries / Universal / Interfaces / AIncludes / PPCToolbox.a < prev    next >
Encoding:
Text File  |  1998-08-17  |  23.0 KB  |  698 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        PPCToolbox.a
  3. ;
  4. ;    Contains:    Program-Program Communications Toolbox Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Release:    Universal Interfaces 3.2
  8. ;
  9. ;    Copyright:    © 1989-1993, 1995-1998 by Apple Computer, Inc., all rights reserved
  10. ;
  11. ;    Bugs?:        For bug reports, consult the following page on
  12. ;                the World Wide Web:
  13. ;
  14. ;                    http://developer.apple.com/bugreporter/
  15. ;
  16. ;
  17.     IF &TYPE('__PPCTOOLBOX__') = 'UNDEFINED' THEN
  18. __PPCTOOLBOX__ SET 1
  19.  
  20.     IF &TYPE('__MACTYPES__') = 'UNDEFINED' THEN
  21.     include 'MacTypes.a'
  22.     ENDIF
  23.     IF &TYPE('__APPLETALK__') = 'UNDEFINED' THEN
  24.     include 'AppleTalk.a'
  25.     ENDIF
  26.  
  27. ; typedef unsigned char                 PPCServiceType
  28.  
  29.  
  30. ppcServiceRealTime                EQU        1
  31. ; typedef short                         PPCLocationKind
  32.  
  33.  
  34. ppcNoLocation                    EQU        0                    ; There is no PPCLocName 
  35. ppcNBPLocation                    EQU        1                    ; Use AppleTalk NBP      
  36. ppcNBPTypeLocation                EQU        2                    ; Used for specifying a location name type during PPCOpen only 
  37. ; typedef short                         PPCPortKinds
  38.  
  39.  
  40. ppcByCreatorAndType                EQU        1                    ; Port type is specified as colloquial Mac creator and type 
  41. ppcByString                        EQU        2                    ; Port type is in pascal string format 
  42. ;  Values returned for request field in PPCInform call 
  43. ; typedef unsigned char                 PPCSessionOrigin
  44.  
  45.  
  46.                                                             ; Values returned for requestType field in PPCInform call 
  47. ppcLocalOrigin                    EQU        1                    ; session originated from this machine 
  48. ppcRemoteOrigin                    EQU        2                    ; session originated from remote machine 
  49. ; typedef short                         PPCPortRefNum
  50.  
  51. ; typedef long                             PPCSessRefNum
  52.  
  53. PPCPortRec                RECORD 0
  54. nameScript                 ds.w    1                ; offset: $0 (0)        ;  script of name 
  55. name                     ds        Str32Field        ; offset: $2 (2)        ;  name of port as seen in browser 
  56. portKindSelector         ds.w    1                ; offset: $24 (36)        ;  which variant 
  57. portTypeStr                 ds        Str32            ; offset: $26 (38)        ;  pascal type string 
  58.                          ORG 38
  59. portCreator                 ds.l    1                ; offset: $26 (38)
  60. portType                 ds.l    1                ; offset: $2A (42)
  61.                          ORG 72
  62. sizeof                     EQU *                    ; size:   $48 (72)
  63.                         ENDR
  64. ; typedef struct PPCPortRec *            PPCPortPtr
  65.  
  66. LocationNameRec            RECORD 0
  67. locationKindSelector     ds.w    1                ; offset: $0 (0)        ;  which variant 
  68. nbpEntity                 ds        EntityName        ; offset: $2 (2)        ;  NBP name entity 
  69.                          ORG 2
  70. nbpType                     ds        Str32            ; offset: $2 (2)        ;  just the NBP type string, for PPCOpen 
  71.                          ORG 104
  72. sizeof                     EQU *                    ; size:   $68 (104)
  73.                         ENDR
  74. ; typedef struct LocationNameRec *        LocationNamePtr
  75.  
  76. PortInfoRec                RECORD 0
  77. filler1                     ds.b    1                ; offset: $0 (0)
  78. authRequired             ds.b    1                ; offset: $1 (1)
  79. name                     ds        PPCPortRec        ; offset: $2 (2)
  80. sizeof                     EQU *                    ; size:   $4A (74)
  81.                         ENDR
  82. ; typedef struct PortInfoRec *            PortInfoPtr
  83.  
  84. ; typedef struct PortInfoRec *            PortInfoArrayPtr
  85.  
  86.  
  87.  
  88. ; typedef PPCParamBlockRec *            PPCParamBlockPtr
  89.  
  90. PPCOpenPBRec            RECORD 0
  91. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  92. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  93. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  94. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  95. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  96. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  97. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  98. portRefNum                 ds.w    1                ; offset: $26 (38)        ;  38 <--   Port Reference 
  99. filler1                     ds.l    1                ; offset: $28 (40)
  100. serviceType                 ds.b    1                ; offset: $2C (44)        ;  44 -->    Bit field describing the requested port service 
  101. resFlag                     ds.b    1                ; offset: $2D (45)        ;  Must be set to 0 
  102. portName                 ds.l    1                ; offset: $2E (46)        ;  46 -->   PortName for PPC 
  103. locationName             ds.l    1                ; offset: $32 (50)        ;  50 -->   If NBP Registration is required 
  104. networkVisible             ds.b    1                ; offset: $36 (54)        ;  54 -->   make this network visible on network 
  105. nbpRegistered             ds.b    1                ; offset: $37 (55)        ;  55 <--   The given location name was registered on the network 
  106. sizeof                     EQU *                    ; size:   $38 (56)
  107.                         ENDR
  108. ; typedef struct PPCOpenPBRec *            PPCOpenPBPtr
  109.  
  110. PPCInformPBRec            RECORD 0
  111. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  112. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  113. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  114. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  115. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  116. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  117. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  118. portRefNum                 ds.w    1                ; offset: $26 (38)        ;  38 -->   Port Identifier 
  119. sessRefNum                 ds.l    1                ; offset: $28 (40)        ;  40 <--   Session Reference 
  120. serviceType                 ds.b    1                ; offset: $2C (44)        ;  44 <--   Status Flags for type of session, local, remote 
  121. autoAccept                 ds.b    1                ; offset: $2D (45)        ;  45 -->   if true session will be accepted automatically 
  122. portName                 ds.l    1                ; offset: $2E (46)        ;  46 -->   Buffer for Source PPCPortRec 
  123. locationName             ds.l    1                ; offset: $32 (50)        ;  50 -->   Buffer for Source LocationNameRec 
  124. userName                 ds.l    1                ; offset: $36 (54)        ;  54 -->   Buffer for Soure user's name trying to link. 
  125. userData                 ds.l    1                ; offset: $3A (58)        ;  58 <--   value included in PPCStart's userData 
  126. requestType                 ds.b    1                ; offset: $3E (62)        ;  62 <--   Local or Network 
  127. filler                     ds.b    1                ; offset: $3F (63)
  128. sizeof                     EQU *                    ; size:   $40 (64)
  129.                         ENDR
  130. ; typedef struct PPCInformPBRec *        PPCInformPBPtr
  131.  
  132. PPCStartPBRec            RECORD 0
  133. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  134. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  135. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  136. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  137. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  138. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  139. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  140. portRefNum                 ds.w    1                ; offset: $26 (38)        ;  38 -->   Port Identifier 
  141. sessRefNum                 ds.l    1                ; offset: $28 (40)        ;  40 <--   Session Reference 
  142. serviceType                 ds.b    1                ; offset: $2C (44)        ;  44 <--   Actual service method (realTime) 
  143. resFlag                     ds.b    1                ; offset: $2D (45)        ;  45 -->   Must be set to 0  
  144. portName                 ds.l    1                ; offset: $2E (46)        ;  46 -->   Destination portName 
  145. locationName             ds.l    1                ; offset: $32 (50)        ;  50 -->   NBP or NAS style service location name 
  146. rejectInfo                 ds.l    1                ; offset: $36 (54)        ;  54 <--   reason for rejecting the session request 
  147. userData                 ds.l    1                ; offset: $3A (58)        ;  58 -->   Copied to destination PPCInform parameter block 
  148. userRefNum                 ds.l    1                ; offset: $3E (62)        ;  62 -->   userRefNum (obtained during login process)  
  149. sizeof                     EQU *                    ; size:   $42 (66)
  150.                         ENDR
  151. ; typedef struct PPCStartPBRec *        PPCStartPBPtr
  152.  
  153. PPCAcceptPBRec            RECORD 0
  154. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  155. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  156. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  157. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  158. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  159. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  160. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  161. filler1                     ds.w    1                ; offset: $26 (38)
  162. sessRefNum                 ds.l    1                ; offset: $28 (40)        ;  40 -->   Session Reference 
  163. sizeof                     EQU *                    ; size:   $2C (44)
  164.                         ENDR
  165. ; typedef struct PPCAcceptPBRec *        PPCAcceptPBPtr
  166.  
  167. PPCRejectPBRec            RECORD 0
  168. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  169. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  170. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  171. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  172. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  173. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  174. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  175. filler1                     ds.w    1                ; offset: $26 (38)
  176. sessRefNum                 ds.l    1                ; offset: $28 (40)        ;  40 -->   Session Reference 
  177. filler2                     ds.w    1                ; offset: $2C (44)
  178. filler3                     ds.l    1                ; offset: $2E (46)
  179. filler4                     ds.l    1                ; offset: $32 (50)
  180. rejectInfo                 ds.l    1                ; offset: $36 (54)        ;  54 -->   reason for rejecting the session request  
  181. sizeof                     EQU *                    ; size:   $3A (58)
  182.                         ENDR
  183. ; typedef struct PPCRejectPBRec *        PPCRejectPBPtr
  184.  
  185. PPCWritePBRec            RECORD 0
  186. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  187. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  188. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  189. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  190. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  191. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  192. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  193. filler1                     ds.w    1                ; offset: $26 (38)
  194. sessRefNum                 ds.l    1                ; offset: $28 (40)        ;  40 -->   Session Reference 
  195. bufferLength             ds.l    1                ; offset: $2C (44)        ;  44 -->   Length of the message buffer 
  196. actualLength             ds.l    1                ; offset: $30 (48)        ;  48 <--   Actual Length Written 
  197. bufferPtr                 ds.l    1                ; offset: $34 (52)        ;  52 -->   Pointer to message buffer 
  198. more                     ds.b    1                ; offset: $38 (56)        ;  56 -->   if more data in this block will be written 
  199. filler2                     ds.b    1                ; offset: $39 (57)
  200. userData                 ds.l    1                ; offset: $3A (58)        ;  58 -->   Message block userData Uninterpreted by PPC 
  201. blockCreator             ds.l    1                ; offset: $3E (62)        ;  62 -->   Message block creator Uninterpreted by PPC 
  202. blockType                 ds.l    1                ; offset: $42 (66)        ;  66 -->   Message block type Uninterpreted by PPC 
  203. sizeof                     EQU *                    ; size:   $46 (70)
  204.                         ENDR
  205. ; typedef struct PPCWritePBRec *        PPCWritePBPtr
  206.  
  207. PPCReadPBRec            RECORD 0
  208. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  209. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  210. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  211. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  212. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  213. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  214. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  215. filler1                     ds.w    1                ; offset: $26 (38)
  216. sessRefNum                 ds.l    1                ; offset: $28 (40)        ;  40 -->   Session Reference 
  217. bufferLength             ds.l    1                ; offset: $2C (44)        ;  44 -->   Length of the message buffer 
  218. actualLength             ds.l    1                ; offset: $30 (48)        ;  48 <--   Actual length read 
  219. bufferPtr                 ds.l    1                ; offset: $34 (52)        ;  52 -->   Pointer to message buffer 
  220. more                     ds.b    1                ; offset: $38 (56)        ;  56 <--   if true more data in this block to be read 
  221. filler2                     ds.b    1                ; offset: $39 (57)
  222. userData                 ds.l    1                ; offset: $3A (58)        ;  58 <--   Message block userData Uninterpreted by PPC 
  223. blockCreator             ds.l    1                ; offset: $3E (62)        ;  62 <--   Message block creator Uninterpreted by PPC 
  224. blockType                 ds.l    1                ; offset: $42 (66)        ;  66 <--   Message block type Uninterpreted by PPC 
  225. sizeof                     EQU *                    ; size:   $46 (70)
  226.                         ENDR
  227. ; typedef struct PPCReadPBRec *            PPCReadPBPtr
  228.  
  229. PPCEndPBRec                RECORD 0
  230. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  231. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  232. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  233. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  234. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  235. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  236. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  237. filler1                     ds.w    1                ; offset: $26 (38)
  238. sessRefNum                 ds.l    1                ; offset: $28 (40)        ;  40 -->   Session Reference 
  239. sizeof                     EQU *                    ; size:   $2C (44)
  240.                         ENDR
  241. ; typedef struct PPCEndPBRec *            PPCEndPBPtr
  242.  
  243. PPCClosePBRec            RECORD 0
  244. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  245. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  246. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  247. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  248. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  249. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  250. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  251. portRefNum                 ds.w    1                ; offset: $26 (38)        ;  38 -->   Port Identifier 
  252. sizeof                     EQU *                    ; size:   $28 (40)
  253.                         ENDR
  254. ; typedef struct PPCClosePBRec *        PPCClosePBPtr
  255.  
  256. IPCListPortsPBRec        RECORD 0
  257. qLink                     ds.l    1                ; offset: $0 (0)        ;  PPC's Internal Use 
  258. csCode                     ds.w    1                ; offset: $4 (4)        ;  Requested PPC command 
  259. intUse                     ds.w    1                ; offset: $6 (6)        ;  Internal Use 
  260. intUsePtr                 ds.l    1                ; offset: $8 (8)        ;  Internal Use 
  261. ioCompletion             ds.l    1                ; offset: $C (12)        ;  12 -->    Completion Routine 
  262. ioResult                 ds.w    1                ; offset: $10 (16)        ;  16 <--     Command Result Code 
  263. Reserved                 ds.l    5                ; offset: $12 (18)        ;  Reserved for PPC, Don't use 
  264. filler1                     ds.w    1                ; offset: $26 (38)
  265. startIndex                 ds.w    1                ; offset: $28 (40)        ;  40 -->   Start Index 
  266. requestCount             ds.w    1                ; offset: $2A (42)        ;  42 -->   Number of entries to be returned 
  267. actualCount                 ds.w    1                ; offset: $2C (44)        ;  44 <--   Actual Number of entries to be returned 
  268. portName                 ds.l    1                ; offset: $2E (46)        ;  46 -->   PortName Match 
  269. locationName             ds.l    1                ; offset: $32 (50)        ;  50 -->   NBP or NAS type name to locate the Port Location 
  270. bufferPtr                 ds.l    1                ; offset: $36 (54)        ;  54 -->   Pointer to a buffer requestCount*sizeof(PortInfo) bytes big 
  271. sizeof                     EQU *                    ; size:   $3A (58)
  272.                         ENDR
  273. ; typedef struct IPCListPortsPBRec *    IPCListPortsPBPtr
  274.  
  275. PPCParamBlockRec        RECORD 0
  276. openParam                 ds        PPCOpenPBRec    ; offset: $0 (0)
  277.                          ORG 0
  278. informParam                 ds        PPCInformPBRec ; offset: $0 (0)
  279.                          ORG 0
  280. startParam                 ds        PPCStartPBRec    ; offset: $0 (0)
  281.                          ORG 0
  282. acceptParam                 ds        PPCAcceptPBRec ; offset: $0 (0)
  283.                          ORG 0
  284. rejectParam                 ds        PPCRejectPBRec ; offset: $0 (0)
  285.                          ORG 0
  286. writeParam                 ds        PPCWritePBRec    ; offset: $0 (0)
  287.                          ORG 0
  288. readParam                 ds        PPCReadPBRec    ; offset: $0 (0)
  289.                          ORG 0
  290. endParam                 ds        PPCEndPBRec        ; offset: $0 (0)
  291.                          ORG 0
  292. closeParam                 ds        PPCClosePBRec    ; offset: $0 (0)
  293.                          ORG 0
  294. listPortsParam             ds        IPCListPortsPBRec ; offset: $0 (0)
  295.                          ORG 70
  296. sizeof                     EQU *                    ; size:   $46 (70)
  297.                         ENDR
  298. ;   PPC Calling Conventions  
  299. ;
  300. ; pascal OSErr PPCInit(void )
  301. ;
  302.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  303.         ; returns:
  304.         ;    OSErr           <= D0
  305.         Macro
  306.         _PPCInit
  307.             moveq               #0,D0
  308.             dc.w                $A0DD
  309.         EndM
  310.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  311.         IMPORT_CFM_FUNCTION PPCInit
  312.     ENDIF
  313.  
  314.  
  315. ;
  316. ; pascal OSErr PPCOpenSync(PPCOpenPBPtr pb)
  317. ;
  318.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  319.         ; parameters:
  320.         ;    pb              => A0
  321.         ; returns:
  322.         ;    OSErr           <= D0
  323.         Macro
  324.         _PPCOpenSync
  325.             moveq               #1,D0
  326.             dc.w                $A0DD
  327.         EndM
  328.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  329.         IMPORT_CFM_FUNCTION PPCOpenSync
  330.     ENDIF
  331.  
  332. ;
  333. ; pascal OSErr PPCOpenAsync(PPCOpenPBPtr pb)
  334. ;
  335.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  336.         ; parameters:
  337.         ;    pb              => A0
  338.         ; returns:
  339.         ;    OSErr           <= D0
  340.         Macro
  341.         _PPCOpenAsync
  342.             moveq               #1,D0
  343.             dc.w                $A4DD
  344.         EndM
  345.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  346.         IMPORT_CFM_FUNCTION PPCOpenAsync
  347.     ENDIF
  348.  
  349. ;
  350. ; pascal OSErr PPCInformSync(PPCInformPBPtr pb)
  351. ;
  352.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  353.         ; parameters:
  354.         ;    pb              => A0
  355.         ; returns:
  356.         ;    OSErr           <= D0
  357.         Macro
  358.         _PPCInformSync
  359.             moveq               #3,D0
  360.             dc.w                $A0DD
  361.         EndM
  362.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  363.         IMPORT_CFM_FUNCTION PPCInformSync
  364.     ENDIF
  365.  
  366. ;
  367. ; pascal OSErr PPCInformAsync(PPCInformPBPtr pb)
  368. ;
  369.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  370.         ; parameters:
  371.         ;    pb              => A0
  372.         ; returns:
  373.         ;    OSErr           <= D0
  374.         Macro
  375.         _PPCInformAsync
  376.             moveq               #3,D0
  377.             dc.w                $A4DD
  378.         EndM
  379.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  380.         IMPORT_CFM_FUNCTION PPCInformAsync
  381.     ENDIF
  382.  
  383. ;
  384. ; pascal OSErr PPCStartSync(PPCStartPBPtr pb)
  385. ;
  386.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  387.         ; parameters:
  388.         ;    pb              => A0
  389.         ; returns:
  390.         ;    OSErr           <= D0
  391.         Macro
  392.         _PPCStartSync
  393.             moveq               #2,D0
  394.             dc.w                $A0DD
  395.         EndM
  396.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  397.         IMPORT_CFM_FUNCTION PPCStartSync
  398.     ENDIF
  399.  
  400. ;
  401. ; pascal OSErr PPCStartAsync(PPCStartPBPtr pb)
  402. ;
  403.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  404.         ; parameters:
  405.         ;    pb              => A0
  406.         ; returns:
  407.         ;    OSErr           <= D0
  408.         Macro
  409.         _PPCStartAsync
  410.             moveq               #2,D0
  411.             dc.w                $A4DD
  412.         EndM
  413.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  414.         IMPORT_CFM_FUNCTION PPCStartAsync
  415.     ENDIF
  416.  
  417. ;
  418. ; pascal OSErr PPCAcceptSync(PPCAcceptPBPtr pb)
  419. ;
  420.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  421.         ; parameters:
  422.         ;    pb              => A0
  423.         ; returns:
  424.         ;    OSErr           <= D0
  425.         Macro
  426.         _PPCAcceptSync
  427.             moveq               #4,D0
  428.             dc.w                $A0DD
  429.         EndM
  430.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  431.         IMPORT_CFM_FUNCTION PPCAcceptSync
  432.     ENDIF
  433.  
  434. ;
  435. ; pascal OSErr PPCAcceptAsync(PPCAcceptPBPtr pb)
  436. ;
  437.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  438.         ; parameters:
  439.         ;    pb              => A0
  440.         ; returns:
  441.         ;    OSErr           <= D0
  442.         Macro
  443.         _PPCAcceptAsync
  444.             moveq               #4,D0
  445.             dc.w                $A4DD
  446.         EndM
  447.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  448.         IMPORT_CFM_FUNCTION PPCAcceptAsync
  449.     ENDIF
  450.  
  451. ;
  452. ; pascal OSErr PPCRejectSync(PPCRejectPBPtr pb)
  453. ;
  454.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  455.         ; parameters:
  456.         ;    pb              => A0
  457.         ; returns:
  458.         ;    OSErr           <= D0
  459.         Macro
  460.         _PPCRejectSync
  461.             moveq               #5,D0
  462.             dc.w                $A0DD
  463.         EndM
  464.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  465.         IMPORT_CFM_FUNCTION PPCRejectSync
  466.     ENDIF
  467.  
  468. ;
  469. ; pascal OSErr PPCRejectAsync(PPCRejectPBPtr pb)
  470. ;
  471.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  472.         ; parameters:
  473.         ;    pb              => A0
  474.         ; returns:
  475.         ;    OSErr           <= D0
  476.         Macro
  477.         _PPCRejectAsync
  478.             moveq               #5,D0
  479.             dc.w                $A4DD
  480.         EndM
  481.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  482.         IMPORT_CFM_FUNCTION PPCRejectAsync
  483.     ENDIF
  484.  
  485. ;
  486. ; pascal OSErr PPCWriteSync(PPCWritePBPtr pb)
  487. ;
  488.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  489.         ; parameters:
  490.         ;    pb              => A0
  491.         ; returns:
  492.         ;    OSErr           <= D0
  493.         Macro
  494.         _PPCWriteSync
  495.             moveq               #6,D0
  496.             dc.w                $A0DD
  497.         EndM
  498.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  499.         IMPORT_CFM_FUNCTION PPCWriteSync
  500.     ENDIF
  501.  
  502. ;
  503. ; pascal OSErr PPCWriteAsync(PPCWritePBPtr pb)
  504. ;
  505.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  506.         ; parameters:
  507.         ;    pb              => A0
  508.         ; returns:
  509.         ;    OSErr           <= D0
  510.         Macro
  511.         _PPCWriteAsync
  512.             moveq               #6,D0
  513.             dc.w                $A4DD
  514.         EndM
  515.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  516.         IMPORT_CFM_FUNCTION PPCWriteAsync
  517.     ENDIF
  518.  
  519. ;
  520. ; pascal OSErr PPCReadSync(PPCReadPBPtr pb)
  521. ;
  522.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  523.         ; parameters:
  524.         ;    pb              => A0
  525.         ; returns:
  526.         ;    OSErr           <= D0
  527.         Macro
  528.         _PPCReadSync
  529.             moveq               #7,D0
  530.             dc.w                $A0DD
  531.         EndM
  532.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  533.         IMPORT_CFM_FUNCTION PPCReadSync
  534.     ENDIF
  535.  
  536. ;
  537. ; pascal OSErr PPCReadAsync(PPCReadPBPtr pb)
  538. ;
  539.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  540.         ; parameters:
  541.         ;    pb              => A0
  542.         ; returns:
  543.         ;    OSErr           <= D0
  544.         Macro
  545.         _PPCReadAsync
  546.             moveq               #7,D0
  547.             dc.w                $A4DD
  548.         EndM
  549.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  550.         IMPORT_CFM_FUNCTION PPCReadAsync
  551.     ENDIF
  552.  
  553. ;
  554. ; pascal OSErr PPCEndSync(PPCEndPBPtr pb)
  555. ;
  556.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  557.         ; parameters:
  558.         ;    pb              => A0
  559.         ; returns:
  560.         ;    OSErr           <= D0
  561.         Macro
  562.         _PPCEndSync
  563.             moveq               #8,D0
  564.             dc.w                $A0DD
  565.         EndM
  566.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  567.         IMPORT_CFM_FUNCTION PPCEndSync
  568.     ENDIF
  569.  
  570. ;
  571. ; pascal OSErr PPCEndAsync(PPCEndPBPtr pb)
  572. ;
  573.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  574.         ; parameters:
  575.         ;    pb              => A0
  576.         ; returns:
  577.         ;    OSErr           <= D0
  578.         Macro
  579.         _PPCEndAsync
  580.             moveq               #8,D0
  581.             dc.w                $A4DD
  582.         EndM
  583.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  584.         IMPORT_CFM_FUNCTION PPCEndAsync
  585.     ENDIF
  586.  
  587. ;
  588. ; pascal OSErr PPCCloseSync(PPCClosePBPtr pb)
  589. ;
  590.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  591.         ; parameters:
  592.         ;    pb              => A0
  593.         ; returns:
  594.         ;    OSErr           <= D0
  595.         Macro
  596.         _PPCCloseSync
  597.             moveq               #9,D0
  598.             dc.w                $A0DD
  599.         EndM
  600.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  601.         IMPORT_CFM_FUNCTION PPCCloseSync
  602.     ENDIF
  603.  
  604. ;
  605. ; pascal OSErr PPCCloseAsync(PPCClosePBPtr pb)
  606. ;
  607.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  608.         ; parameters:
  609.         ;    pb              => A0
  610.         ; returns:
  611.         ;    OSErr           <= D0
  612.         Macro
  613.         _PPCCloseAsync
  614.             moveq               #9,D0
  615.             dc.w                $A4DD
  616.         EndM
  617.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  618.         IMPORT_CFM_FUNCTION PPCCloseAsync
  619.     ENDIF
  620.  
  621. ;
  622. ; pascal OSErr IPCListPortsSync(IPCListPortsPBPtr pb)
  623. ;
  624.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  625.         ; parameters:
  626.         ;    pb              => A0
  627.         ; returns:
  628.         ;    OSErr           <= D0
  629.         Macro
  630.         _IPCListPortsSync
  631.             moveq               #10,D0
  632.             dc.w                $A0DD
  633.         EndM
  634.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  635.         IMPORT_CFM_FUNCTION IPCListPortsSync
  636.     ENDIF
  637.  
  638. ;
  639. ; pascal OSErr IPCListPortsAsync(IPCListPortsPBPtr pb)
  640. ;
  641.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  642.         ; parameters:
  643.         ;    pb              => A0
  644.         ; returns:
  645.         ;    OSErr           <= D0
  646.         Macro
  647.         _IPCListPortsAsync
  648.             moveq               #10,D0
  649.             dc.w                $A4DD
  650.         EndM
  651.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  652.         IMPORT_CFM_FUNCTION IPCListPortsAsync
  653.     ENDIF
  654.  
  655. ;
  656. ; pascal OSErr DeleteUserIdentity(unsigned long userRef)
  657. ;
  658.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  659.         IMPORT_CFM_FUNCTION DeleteUserIdentity
  660.     ENDIF
  661.  
  662. ;
  663. ; pascal OSErr GetDefaultUser(unsigned long *userRef, Str32 userName)
  664. ;
  665.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  666.         IMPORT_CFM_FUNCTION GetDefaultUser
  667.     ENDIF
  668.  
  669. ;
  670. ; pascal OSErr StartSecureSession(PPCStartPBPtr pb, Str32 userName, Boolean useDefault, Boolean allowGuest, Boolean *guestSelected, ConstStr255Param prompt)
  671. ;
  672.     IF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  673.         IMPORT_CFM_FUNCTION StartSecureSession
  674.     ENDIF
  675.  
  676. ;
  677. ; pascal OSErr PPCBrowser(ConstStr255Param prompt, ConstStr255Param applListLabel, Boolean defaultSpecified, LocationNameRec *theLocation, PortInfoRec *thePortInfo, PPCFilterUPP portFilter, ConstStr32Param theLocNBPType)
  678. ;
  679.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  680.         Macro
  681.         _PPCBrowser
  682.             move.w              #$0D00,D0
  683.             dc.w                $A82B
  684.         EndM
  685.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  686.         IMPORT_CFM_FUNCTION PPCBrowser
  687.     ENDIF
  688.  
  689.  
  690. ;  The ParamBlock calls with the "Sync" or "Async" suffix are being phased out.
  691. ;
  692.  
  693.  
  694.  
  695.     ENDIF ; __PPCTOOLBOX__ 
  696.  
  697.